home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / glibmm-2.4 / proc / m4 / convert_glib.m4 < prev    next >
M4 Source File  |  2006-04-20  |  3KB  |  64 lines

  1. dnl 
  2. dnl Glib C names have prefix 'G' but C++ namespace Glib
  3. dnl 
  4. define(`_CONV_GLIB_ENUM',`dnl
  5. _CONVERSION(`G$1', `$1', (($1)(__ARG3__)))
  6. _CONVERSION(`G$1', `Glib::$1', ((Glib::$1)(__ARG3__)))
  7. _CONVERSION(`$1', `G$1', ((G$1)(__ARG3__)))
  8. _CONVERSION(`Glib::$1', `G$1', ((G$1)(__ARG3__)))
  9. ')dnl
  10.  
  11. _EQUAL(gchar,char)
  12. _EQUAL(gchar*,char*)
  13. _EQUAL(gchar**,char**)
  14. _EQUAL(gint**,int**)
  15. _EQUAL(gchar**,char*[])
  16. _EQUAL(const gchar*,const char*)
  17. _EQUAL(const-gchar*,const char*)
  18. _EQUAL(gpointer*,void**)
  19.  
  20. _CONV_GLIB_ENUM(IOStatus)
  21. _CONV_GLIB_ENUM(IOFlags)
  22. _CONV_GLIB_ENUM(IOCondition)
  23. _CONV_GLIB_ENUM(SeekType)
  24. _CONV_GLIB_ENUM(OptionArg)
  25.  
  26. _CONVERSION(`gunichar&',`gunichar*',`&($3)')
  27. _CONVERSION(`gsize&',`gsize*',`&($3)')
  28.  
  29.  
  30. # Strings:
  31. define(`__GCHARP_TO_USTRING',`Glib::convert_const_gchar_ptr_to_ustring($`'3)')
  32. define(`__GCHARP_TO_STDSTRING',`Glib::convert_const_gchar_ptr_to_stdstring($`'3)')
  33.  
  34. _CONVERSION(`const Glib::ustring&',`const char*',`$3.c_str()')
  35. _CONVERSION(`const std::string&',`const char*',`$3.c_str()')
  36. _CONVERSION(`const Glib::ustring&',`gchar*',`const_cast<gchar*>($3.c_str())')
  37. _CONVERSION(`gchar*',`Glib::ustring',__GCHARP_TO_USTRING)
  38. _CONVERSION(`const-gchar*',`Glib::ustring',__GCHARP_TO_USTRING)
  39. _CONVERSION(`const gchar*',`Glib::ustring',__GCHARP_TO_USTRING)
  40. _CONVERSION(`const char*',`Glib::ustring',__GCHARP_TO_USTRING)
  41. _CONVERSION(`const char*',`std::string',__GCHARP_TO_STDSTRING)
  42. _CONVERSION(`const gchar*',`const Glib::ustring&',__GCHARP_TO_USTRING)
  43. _CONVERSION(`const char*',`const-gchar*',`$3')
  44. _CONVERSION(`const-gchar*',`const char*',`$3')
  45.  
  46. _CONVERSION(`return-gchar*',`Glib::ustring',`Glib::convert_return_gchar_ptr_to_ustring($3)')
  47. _CONVERSION(`return-gchar*',`std::string',`Glib::convert_return_gchar_ptr_to_stdstring($3)')
  48. _CONVERSION(`return-char*',`Glib::ustring',`Glib::convert_return_gchar_ptr_to_ustring($3)')
  49.  
  50. _CONVERSION(`const Glib::RefPtr<Glib::Object>&',`GObject*',__CONVERT_REFPTR_TO_P)
  51. _CONVERSION(`const Glib::RefPtr<const Glib::Object>&',`GObject*',__CONVERT_CONST_REFPTR_TO_P_SUN(Glib::Object))
  52. _CONVERSION(`GObject*',`Glib::RefPtr<Glib::Object>',`Glib::wrap($3)')
  53. _CONVERSION(`GObject*',`Glib::RefPtr<const Glib::Object>',`Glib::wrap($3)')
  54.  
  55. _CONVERSION(`Glib::ValueBase&',`GValue*',`($3).gobj()')
  56. _CONVERSION(`const Glib::ValueBase&',`const GValue*',`($3).gobj()')
  57. _CONVERSION(`const Glib::ValueBase&',`GValue*',`const_cast<GValue*>(($3).gobj())')
  58. _CONVERSION(`GValue*', `Glib::ValueBase&', `*reinterpret_cast<Glib::ValueBase*>($3)')
  59. _CONVERSION(`const GValue*', `const Glib::ValueBase&', `*reinterpret_cast<const Glib::ValueBase*>($3)')
  60.  
  61. _CONVERSION(`OptionGroup&',`GOptionGroup*',`($3).gobj()')
  62. #_CONVERSION(`GOptionGroup*',`OptionGroup',`Glib::wrap(($3), true /* take_copy */)')
  63.  
  64.